/*
 * PantallaConfiguracionFlujos.java
 *
 * Created on 21 de junio de 2006, 10:49 AM
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package ig.metrica.ui.modelo;

import ig.metrica.ui.PantallaSevinproPanel;
import ig.metrica.ui.confBalance.PConfiguracionBalance;
import ig.metrica.ui.confFlujos.PConfiguracionFlujos;
import ig.metrica.ui.confFlujos.formulada.PConfiguracionFlujosFormulada;
import ig.util.NoContinuaException;
import java.awt.BorderLayout;
import java.util.List;
import javax.swing.JComboBox;

/** 
 *
 * @author jsanchez
 */
public class PantallaConfiguracion  extends PantallaSevinproPanel {
    
    /** Creates a new instance of PantallaConfiguracionFlujos */
    private javax.swing.JTabbedPane TAB_PANEL;
    
    private PConfiguracionBalance pConfiguracionBalance;    
    private PConfiguracionFlujos pConfiguracionFlujos;
    private PConfiguracionFlujosFormulada pConfiguracionFlujosFormulada;
    private WizzardModelo wizzard=null;

    private JComboBox[] comboBoxsColumns=new JComboBox[0];

    @Override
    public JComboBox[] getComboBoxsColumnsTable1() {
        return comboBoxsColumns;
    }

    private JComboBox[] comboBoxsColumnsTable2=new JComboBox[0];
    public JComboBox[] getComboBoxsColumnsTable2() {
        return comboBoxsColumnsTable2;
    }

    public PantallaConfiguracion(ThreadModelos threadModelos,WizzardModelo wizzard) throws NoContinuaException {                
        this.threadModelos=threadModelos;
        this.wizzard=wizzard;
        TAB_PANEL = new javax.swing.JTabbedPane();        
        TAB_PANEL.addTab("Flujos", pConfiguracionFlujos =new PConfiguracionFlujos ()); // NOI18N
        TAB_PANEL.addTab("Flujos Formulados", pConfiguracionFlujosFormulada = new PConfiguracionFlujosFormulada(wizzard)); // NOI18N
        TAB_PANEL.addTab("Balances", pConfiguracionBalance = new PConfiguracionBalance()); // NOI18N        
        
        setLayout(new BorderLayout());

        pConfiguracionFlujos.Tabla.setComponentPopupMenu(EditarTabla);
        pConfiguracionBalance.TConfiguracionBalance.setComponentPopupMenu(EditarTabla);

        add(TAB_PANEL, BorderLayout.CENTER);
    }

    public String getTitulo() {
        return "Configuraciones extras";
    }

    public void setModificable(boolean b) {
        pConfiguracionFlujos.setEnabledAll(b);
        pConfiguracionBalance.setEnabledAll(b);
        pConfiguracionFlujosFormulada.setEnabledAll(b);
    }

    public void limpiarCampos() throws Exception {
    }

    public void salir() throws Exception {
    }

    void setNombreModelo(String string)throws Exception {
        if(pConfiguracionFlujos!=null)
            pConfiguracionFlujos.setNombreModelo(string);
        if(pConfiguracionBalance!=null)
            pConfiguracionBalance.setNombreModelo(string);        
        if(pConfiguracionFlujosFormulada!=null)
            pConfiguracionFlujosFormulada.setNombreModelo(string);        
        
    }

    void guardar() throws NoContinuaException {
        this.pConfiguracionBalance.guardar();
        this.pConfiguracionFlujos.guardar();
        this.pConfiguracionFlujosFormulada.guardar();
    }

    @Override
    protected void eliminarLlaveEnTodasLasTablas(List<Object> keys) {
        throw new UnsupportedOperationException("Not supported yet.");
    }
}
